#include "include/Random.h"
#include <chrono>

namespace Tool
{
    Random::Random()
    {
    }

    Random::~Random()
    {

    }

    int Random::GetInt(int min, int max)
    {
        std::uniform_int_distribution<int> dis(min, max);
        return dis(gen);
    }

    double Random::GetDouble(double min, double max)
    {
        std::uniform_real_distribution<double> dis(min, max);
        return dis(gen);
    }

    bool Random::GetBool()
    {
        std::bernoulli_distribution dis(0.5);
        return dis(gen);
    }

    double Random::GetNormal(double mean, double stddev)
    {
        std::normal_distribution<double> dis(mean, stddev);
        return dis(gen);
    }
}
